Telegram Group Search
✈️ Свежие новости из мира AI и Data Science

🔥 Модели, релизы и технологии:
BAGEL от ByteDance — мультимодальная open-source модель: текст, изображение и всё вместе
Mistral Agents API — новый API для сборки AI-агентов: просто, мощно, гибко
FlowTSE — извлекает голос нужного спикера из шумной записи с несколькими говорящими

🧠 Статьи, исследования и лучшие практики:
Мэтчинг по-научному — алгоритм подбора работодателей и кандидатов от Авито
Python и древние фрески — цифровая реставрация с помощью ML
Новая маршрутизация от Яндекса — алгоритмы для пешеходов и велосипедистов
Редактор от Сбера — точечное редактирование изображений словами

📘 Обучение и развитие:
Установка драйверов NVIDIA — полезная шпаргалка для ML-серверов
CV/ML-проект с нуля до продакшена — практическое руководство
Yambda от Яндекса — крупнейший датасет для развития рекомендательных систем

Библиотека дата-сайентиста #свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
💫 Топ-вакансий для дата-сайентистов за неделю

Senior Data Scientist (classic ML), удалёнка

Senior Data Engineer, удалёнка

Quantitative Researcher —‍ от 5 000 до 10 000 $, офис (Армения, ОАЭ, Кипр)

Системный аналитик (Big Data), удалёнка

Аналитик GPT-моделей (Алиса) —‍ от 300 000 до 490 000 ₽, удалёнка

➡️ Еще больше топовых вакансий — в нашем канале Data jobs

Библиотека дата-сайентиста
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡️ Narwhals: универсальные функции для любых DataFrame

С Narwhals можно писать функции, которые работают с разными библиотеками данных — pandas, polars, DuckDB, PySpark и даже PyArrow, без лишних зависимостей.

Пример: группируем данные по месяцам и считаем среднюю цену

import narwhals as nw
from narwhals.typing import IntoFrameT

def agnostic_function(df_native: IntoFrameT, date_column: str, price_column: str) -> IntoFrameT:
return (
nw.from_native(df_native)
.group_by(nw.col(date_column).dt.truncate("1mo"))
.agg(nw.col(price_column).mean())
.sort(date_column)
.to_native()
)


Работает и с pandas:
import pandas as pd
from datetime import datetime

data = {
"date": [datetime(2020, 1, 1), datetime(2020, 1, 8), datetime(2020, 2, 3)],
"price": [1, 4, 3],
}
print(agnostic_function(pd.DataFrame(data), "date", "price"))


И с Polars:
import polars as pl

print(agnostic_function(pl.DataFrame(data), "date", "price"))


👌 Подробные примеры можно посмотреть в статье: https://clc.to/RytBgA

Библиотека дата-сайентиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🤖 Бэкенд под ML-проекты: что может пойти не так

Модель — это всего лишь верхушка айсберга.

В реальных условиях основными источниками проблем становятся не алгоритмы, а архитектура и инфраструктура:
✔️ различия между offline и online логикой,
✔️ проседание по latency,
✔️ неконсистентные признаки,
✔️ неустойчивые A/B-эксперименты,
✔️ и многое другое.

В статье — подробный разбор архитектурных ловушек, реальных кейсов и инженерных решений, которые помогают внедрять ML в продакшен без боли.

📎 Читайте статью и делитесь с командой: https://proglib.io/sh/xCfXt2pH4j

Библиотека дата-сайентиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🎯 Команда дня: строгая типизация NumPy массивов

Обычно мы пишем так:
def f(x: np.ndarray): ...


🙅‍♂️ Но это не защищает от ошибок — форма и тип данных не проверяются.

✔️ Вместо этого — используем обобщённые типы:
from numpy import ndarray, dtype, uint8, bool_, float64

def process(
x: ndarray[tuple[int], dtype[bool_]],
y: ndarray[tuple[int, int, int], dtype[uint8]],
) -> ndarray[tuple[int], dtype[float64]]:
...


Теперь mypy и pyright ловят ошибки до запуска:
🙅‍♂️ неверная размерность,
🙅‍♂️ неподходящий dtype.

👉 Хотите проверку ещё и в рантайме?

✔️ Используйте static_frame:
import static_frame as sf

@sf.CallGuard.check
def f(x: ndarray[tuple[int], dtype[np.number]]): ...


При передаче неверного массива — будет чёткое сообщение об ошибке.

Полезно для:
— ML / data science
— научных расчётов
— оптимизации с NumPy и Numba

Примеры:
ndarray[tuple[int], dtype[bool_]] — 1D массив булей
ndarray[tuple[int, int], dtype[np.str_]] — 2D массив строк
ndarray[tuple[int], dtype[np.number]] — массив любых чисел

Библиотека дата-сайентиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
⭐️ Чек-лист: как правильно работать с pandas

Работаете с табличными данными?

Эти простые советы сэкономят вам время, память и нервы:

✔️ Используйте векторизацию вместо apply

Быстрее, короче, читаемее:
# Вместо apply
df["log"] = np.log(df["x"])


✔️ Считайте в столбцах, а не в цикле по строкам

Избавьтесь от .iterrows() — векторные операции эффективнее:
df["sum"] = df["a"] + df["b"]


✔️ Используйте `category` для колонок с повторяющимися строками

Существенно уменьшает потребление памяти:
df["country"] = df["country"].astype("category")


✔️ Загружайте только нужные данные

Не тратьте ресурсы на лишние строки и столбцы:
pd.read_csv("big.csv", usecols=["col1", "col2"], nrows=100_000)


✔️ Сохраняйте данные одним вызовом, а не в цикле

Сначала собираем — потом записываем:
df.to_csv("result.csv", index=False)


✔️ Контролируйте использование памяти

Проверяйте «тяжёлые» столбцы
df.memory_usage(deep=True)


Библиотека дата-сайентиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🫣 Устали от HR-сказок про «дружный коллектив» и «печеньки в офисе»?

Давайте честно поговорим о том, что действительно происходит на IT-рынке. Не в розовых презентациях, а в реальной жизни разработчиков, тестировщиков, аналитиков и всех, кто живет кодом.

🧐 Мы проводим исследование, чтобы выяснить:

— Как часто мы прыгаем между компаниями (и почему)
— Какие красные флаги заставляют бежать без оглядки
— Где реально находят работу
— Что бесит в HR больше всего
— Сколько кругов собеседований — это уже перебор

Результаты покажут реальную картину рынка. Без приукрашиваний. Может, компании поймут, что нужно менять, а специалисты — куда двигаться дальше.

😈 Опрос займет 5 минут, но результаты будут работать на всех нас → https://clc.to/9aaXVg
🎯 Анализ и прогнозирование временных рядов на Python!

Если вы хотите разобраться, как работать с временными рядами и строить точные прогнозы — этот курс именно для вас.

Будь вы новичком или уже знакомы с темой, вы найдёте в курсе всё необходимое: от базовых понятий до продвинутых моделей.

📦 В курсе разбираются:
— Простое, двойное и тройное экспоненциальное сглаживание (метод Холта-Винтерса)
— Метрики оценки моделей: MAE, RMSE, MAPE
— Продвинутые модели прогнозирования: ARIMA, SARIMA, SARIMAX
— Препроцессинг ежедневных данных и кросс-валидация для временных рядов
— Настройка гиперпараметров и проверка качества прогноза

📌 Вы научитесь:
— Готовить временные ряды к моделированию
— Строить и обучать модели в Python
— Оценивать точность и надёжность прогнозов
— Делать обоснованные предсказания на будущее

🔗 Ссылка на курс: https://clc.to/3GDKJg

Библиотека дата-сайентиста #буст
😵‍💫 Как правильно выбрать LLM для использования в агентских системах

Модели могут выдумывать факты, ссылаться на несуществующие источники и уверенно врать. Особенно часто это происходит при работе с редкими языками или специфическими тематиками.

Поэтому на первом занятии курса «AI-агенты для DS-специалистов» разберем, как с этим бороться. И это только первый из пяти уроков!

🔍 Выбор правильной модели
Не все LLM одинаково полезны. Обсудим квантизованные модели, instruct-версии и мультилингвальные решения. Узнаем, где больше галлюцинаций — в базовых моделях или после дообучения.

💰 Токенизация и стоимость
Разные языки «съедают» разное количество токенов. Покажем, как это влияет на цену API и почему русский текст может стоить дороже английского.

⚡️ Температура и Guardrails
Настройка temperature помогает контролировать креативность модели. А системы Guardrails — отсекать неподходящие ответы еще до генерации.

🧠 Память vs контекст
Казалось бы, зачем RAG, если есть модели с контекстом более 10М токенов? Но не все токены равнозначны. Разберем, когда внешние источники все еще нужны.

В конце создадим простых агентов на LangChain с подключением к внешним источникам и инструментам поиска — и у вас уже будет кейс по созданию собственного AI-агента.

👉 Присоединяйтесь к курсу — приятная цена действует до 14 июня!
🧪 Что делать, если классическая схема A/B-теста не работает

A/B-тестирование — золотой стандарт продуктовой аналитики. Оно помогает принимать решения на основе данных, а не догадок.

Но есть нюанс: вся методика держится на важном допущении — независимости поведения пользователей.

⚠️ А если это допущение нарушено? Например, когда один пользователь влияет на другого: в соцсетях, маркетплейсах, рекомендательных системах — в таких случаях классическая схема даёт сбой.

Что с этим делать? Какие альтернативы существуют?

Разбираемся, когда A/B не работает — и чем его заменить: https://proglib.io/sh/lNqAnLfe9J

Библиотека дата-сайентиста #буст
2025/06/14 04:58:29
Back to Top
HTML Embed Code: